package pres.lnk.learn.designpattern.f_adapter.adapter1;

import pres.lnk.learn.designpattern.f_adapter.Mobile;
import pres.lnk.learn.designpattern.f_adapter.Voltage220;

/**
 * <p>适配器模式一 类适配器模式</p>
 * <pre>
 * 直接继承原业务对象（Voltage220），重写对应方法
 * 推荐使用：符合“合成复用原则”，新业务功能与原业务功能独立开，互不影响
 * “合成复用原则”：在系统中尽量使用关联关系来替代继承关系，因此大部分结构型模式都是对象结构型模式。
 * </pre>
 * @Author lnk
 * @Date 2018/2/6
 */
public class Main {
    public static void main(String[] args) {
        Mobile mobile = new Mobile();
        Voltage5Adapter voltage5 = new Voltage5Adapter(new Voltage220());
        mobile.charging(voltage5);
    }
}
